package com.quanling.swing.moju;

import cn.hutool.core.util.StrUtil;

import javax.swing.*;
import java.awt.*;

/**
 * @version V1.0
 * @ClassName: PopupFrame
 * @Description: 弹出层
 * @Author: Xian Jie.Tang
 * @Date: 2019/9/15 18:05
 **/
public class PopupFrame {
    JFrame frame;
    ImageIcon background;

    public PopupFrame(String imgPath) {
        initialize(imgPath);
    }

    public void initImg(String imgPath) {
        EventQueue.invokeLater(new Runnable() {
            @Override
            public void run() {
                try {
                    PopupFrame window = new PopupFrame(imgPath);
                    window.frame.setVisible(true);
                } catch (Exception e) {
                    e.printStackTrace();
                }
            }
        });
    }

    private void initialize(String imgPath) {
        frame = new JFrame();
        frame.setIconImage(Toolkit.getDefaultToolkit().getImage("src/main/resources/Hilfebilder/Kuekanal.jpg"));
        frame.setResizable(false);
        frame.setTitle("说明图片");
        frame.setBounds(846, 100, 250, 200);
        frame.setDefaultCloseOperation(JFrame.HIDE_ON_CLOSE);
        frame.getContentPane().setLayout(null);
        // 背景图片
        background = new ImageIcon("src/main/resources/"+imgPath);
        // 把背景图片显示在一个标签里面
        JLabel label = new JLabel(background);
        // 把标签的大小位置设置为图片刚好填充整个面板
        label.setBounds(0, 0, background.getIconWidth(),
                background.getIconHeight());

        // 把背景图片添加到分层窗格的最底层作为背景
        frame.getContentPane().add(label);
    }

    public static void main(String[] args) {
        EventQueue.invokeLater(new Runnable() {
            @Override
            public void run() {
                try {
                    PopupFrame window = new PopupFrame("Hilfebilder/Fraes/geabspfr.jpg");
                    window.frame.setVisible(true);
                } catch (Exception e) {
                    e.printStackTrace();
                }
            }
        });
    }

    public void closeWin() {
        frame.setVisible(false);
    }

    public void changeBgImg(String imgPath) {
        frame.getContentPane().removeAll();
        background = new ImageIcon("src/main/resources/"+imgPath);
        // 把背景图片显示在一个标签里面
        JLabel label = new JLabel(background);
        // 把标签的大小位置设置为图片刚好填充整个面板
        label.setBounds(0, 0, background.getIconWidth(),
                background.getIconHeight());

        // 把背景图片添加到分层窗格的最底层作为背景
        frame.getContentPane().add(label);
        frame.setVisible(false);
        frame.setVisible(true);
    }
}
